const http = require('http');

http.createServer((req, res) => {
    if (req.headers.accept && req.headers.accept === 'text/event-stream') {
        res.writeHead(200, {
            'Content-Type': 'text/event-stream',
            'Cache-Control': 'no-cache',
            'Connection': 'keep-alive',
            'Access-Control-Allow-Origin': '*', // 允许所有来源
            'Access-Control-Allow-Methods': 'GET,HEAD,PUT,PATCH,POST,DELETE',
            'Access-Control-Allow-Headers': 'Content-Type'
        });

        const message = "Hello, this is a typing effect using SSE and Vue!";
        // const message = "在当今数字化时代，技术的飞速发展为我们的日常生活带来了前所未有的便利。从智能手机到智能家居，再到各种在线服务，技术不仅改变了我们沟通的方式，也极大地提高了生活效率。特别是互联网技术的发展，使得信息传播的速度和广度达到了一个全新的水平。人们可以随时随地获取所需的信息，进行学习、工作以及娱乐活动。这种变化不仅仅局限于个人层面，在企业和社会层面上也产生了深远的影响。企业通过云计算、大数据等先进技术提升了运营效率和服务质量；社会则借助于社交媒体平台促进了文化与思想的交流，增强了全球社区间的联系。\n" +
        //     "\n" +
        //     "然而，随着技术进步而来的也有不少挑战。信息安全问题日益凸显，如何保护个人信息不被滥用成为了一个重要议题。此外，数字鸿沟现象也不容忽视——即不同地区、不同群体之间由于技术接入条件的差异而导致的信息获取能力上的差距。这要求社会各界共同努力，确保每个人都能公平地享受到科技进步带来的好处。教育领域同样面临变革，传统的教学模式正逐渐向更加灵活多样的在线学习方式转变，这对教师提出了新的要求，同时也给学生提供了更多样化的学习机会。\n" +
        //     "\n" +
        //     "面对这些机遇与挑战，持续的技术创新和个人技能提升显得尤为重要。无论是开发者还是普通用户，都需要不断学习新知识，适应快速变化的技术环境。对于企业和组织来说，则需要积极拥抱变革，利用最新技术优化流程、提高竞争力。同时，政策制定者也应该关注技术发展所带来的社会影响，出台相应政策措施以促进健康可持续的发展。\n"
        //

        let index = 0;

        const sendNextChar = () => {
            if (index < message.length) {
                res.write(`data: ${message[index]}\n\n`);
                index++;
                setTimeout(sendNextChar, 20); // 调整延迟以改变打字速度
            } else if(index === message.length){
                res.write(`data:[DONE]\n\n`)
                index++;
            }else {
                res.end();
            }
        };

        sendNextChar();
    } else {
        res.writeHead(404);
        res.end();
    }
}).listen(7777, () => console.log('Server running on port 8080'));
